package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * study_completion，存储患者是否完成研究、出院日期、术后住院天数和未完成研究的原因对象 study_completion
 * 
 * @author ruoyi
 * @date 2024-06-30
 */
public class completion extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 记录ID */
    private Long id;

    /** 用户ID，用于记录用户填写的表格 */
    @Excel(name = "用户ID，用于记录用户填写的表格")
    private Long testerId;

    /** 患者是否完成本研究 */
    @Excel(name = "患者是否完成本研究")
    private Integer studyCompleted;

    /** 未完成研究的原因 */
    @Excel(name = "未完成研究的原因")
    private String reasonNotCompleted;

    /** 出院日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "出院日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date dischargeDate;

    /** 术后住院天数 */
    @Excel(name = "术后住院天数")
    private Long postOpHospitalDays;

    /** 状态(0已完成1未完成) */
    @Excel(name = "状态(0已完成1未完成)")
    private Long status;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setTesterId(Long testerId) 
    {
        this.testerId = testerId;
    }

    public Long getTesterId() 
    {
        return testerId;
    }
    public void setStudyCompleted(Integer studyCompleted) 
    {
        this.studyCompleted = studyCompleted;
    }

    public Integer getStudyCompleted() 
    {
        return studyCompleted;
    }
    public void setReasonNotCompleted(String reasonNotCompleted) 
    {
        this.reasonNotCompleted = reasonNotCompleted;
    }

    public String getReasonNotCompleted() 
    {
        return reasonNotCompleted;
    }
    public void setDischargeDate(Date dischargeDate) 
    {
        this.dischargeDate = dischargeDate;
    }

    public Date getDischargeDate() 
    {
        return dischargeDate;
    }
    public void setPostOpHospitalDays(Long postOpHospitalDays) 
    {
        this.postOpHospitalDays = postOpHospitalDays;
    }

    public Long getPostOpHospitalDays() 
    {
        return postOpHospitalDays;
    }
    public void setStatus(Long status) 
    {
        this.status = status;
    }

    public Long getStatus() 
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("testerId", getTesterId())
            .append("studyCompleted", getStudyCompleted())
            .append("reasonNotCompleted", getReasonNotCompleted())
            .append("dischargeDate", getDischargeDate())
            .append("postOpHospitalDays", getPostOpHospitalDays())
            .append("status", getStatus())
            .toString();
    }
}
